package szxy.base.day08;
/*
    创建对象的语句定义格式：类名  对象名=new 类名()
    构造方法：
       1、方法名和类名一样
            若没有返回值，就是该类的构造方法，用于创建对象的时候调用
            如果写了返回值，那么就是一个普通的方法，将来需要提供对象名调用
       2、一个类中，如果我们自己不写构造方法，那么系统默认会提供方法名和类名一样，无参与方法实现的一个构造方法
       3、如果我们自己明确定义了构造方法(无论是有参还是无参)，系统将永远不会提供默认的构造方法
       4、构造方法也可以发生重载，使用哪一个构造方法根据创建对象时，构造方法传入的参数来决定
 */
class Student4{

    Student4(){
        System.out.println("这是无参构造方法");
    }

    Student4(String s){
        System.out.println("这是一个带有String类型参数的构造方法："+s);
    }
}

public class ConstructorDemo1 {
    public static void main(String[] args) {
        Student4 s1=new Student4();     //调用的是类中的无参构造方法创建对象
        System.out.println(s1);
        ///s1.Student4();       不能调用构造方法

        Student4 s2=new Student4("zmm");

    }
}
